<?php
namespace Home\Controller\StoreKeeper;
use Think\Controller;
/*
 * 店铺管理 2016.6.6
 * author:candy
 * 店铺的基础信息设置
 * 店铺管理（店铺界面设置） 
 * 店铺统计
 * 商品管理
 */

class ShopController extends Controller {

    public function index(){
    	$shop = M('shop');
    	$list = $shop->select();
    	$this->assign('list',$list);
        $this->display();
    }

    /**
     * 6.6
     * 店铺信息统计
     * 销售额 销量
     * 每种商品销量
     */
    public function analysis(){

    }

    /**
     * 6.6
     * 店铺信息删除
       店主不能删除，只能修改信息
       管理员可以关停店铺
     */
    public function deleteShop(){

    }

    /**
     * 6.6
     * 保存商铺信息/更新信息
     */
    public function saveShop(){
        $Shop = M('shop');
        $Shop->create();
        return $Shop->add();
    }

    /**
     * 6.6 
     * 提交信息
     * 上传图像 （大小限制：3M；jpg/gif/png/jpeg）
     * 生成缩略图
     **/
    public function submit(){
        $upload = new \Think\Upload();// 实例化上传类
        $upload->maxSize   =     3145728 ;// 设置附件上传大小
        $upload->exts      =     array('jpg', 'gif', 'png', 'jpeg');// 设置附件上传类型
        $upload->rootPath  =     './Public/Uploads/shop/'; // 设置附件上传根目录
        $upload->savePath  =     ''; // 设置附件上传（子）目录
        // 上传文件 
        $info = $upload->upload();

        $shop_id = $this->saveShop();

        if(!$shop_id){
            $this->error("店铺信息保存出错");
        }else{
            if(!$info) {// 上传错误提示错误信息
                $this->error($upload->getError());
            }else{// 上传成功
                /**
                 * 上传新的头像，先删除已有头像
                 */
                unlink($upload->rootPath.session('shop.pic_path').'200x200/'.session('shop.pic_name'));
                $cropInfo = $_POST['cropinfo'];
                $image = new \Think\Image(); 
                $pic_list = array();
                $User = M('Shop');
                foreach ($info as $key => $img) {
                    // var_dump($img);
                    $image->open($upload->rootPath.$img['savepath'].$img['savename']);
                    // 生成一个居中裁剪为200*200的缩略图并保存为thumb.jpg
                    $crop = json_decode($cropInfo[$key],true);
                    $DIR = $upload->rootPath.$img['savepath'].'200x200/';
                    $image->crop($crop['width'],$crop['height'],$crop['x'],$crop['y'])->save($upload->rootPath.$img['savepath'].$img['savename']);
                    if (!is_dir($DIR)) mkdir($DIR,0777);
                    $image->thumb(200, 200,\Think\Image::IMAGE_THUMB_CENTER)->save($DIR.$img['savename']);
                    //删除图片 未做异常处理
                    $User->pic_name = $img['savename'];
                    $User->pic_path = $img['savepath'];
                    $User->where('user_id='.session('user.user_id'))->save();
                    session('shop.pic_path',$img['savepath']);
                    session('shop.pic_name',$img['savename']);
                    unlink($upload->rootPath.$img['savepath'].$img['savename']);
                    $pic_list[] = array('pic_name'=>$img['savename'],'pic_path'=>$img['savepath'],'type'=>'shop','id'=>$shop_id);
                }
                //批量保存图片 6.5
                $pic = M('Picture');
                $pic->addAll($pic_list);
            }
        }
    }

}